home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2003 November / PCWK1103B.iso / CINEBENCH 2003 / resource / modules / coffee / gui_defines.cox < prev   
Text File  |  2003-02-27  |  23KB  |  785 lines

  1. enum
  2. {
  3.     GUI_H_
  4. };
  5.  
  6. enum
  7. {
  8.     WIN_WINDOW    = 1,
  9.     WIN_DLG            = 2,
  10.     WIN_POPUP        = 3
  11. };
  12.  
  13. enum
  14. {
  15.     FONT_DEFAULT        = 0,
  16.     FONT_STANDARD        = 1,
  17.     FONT_BOLD                = 2,
  18.     FONT_MONOSPACED    = 3
  19. };
  20.  
  21. // COFFEE qualifiers
  22. enum
  23. {
  24.     QSHIFT = 1,
  25.     QCTRL  = 2,
  26.     QALT   = 4,
  27.     QALT2  = 8,
  28.     QALT3  = 16,
  29.     QQUAL_
  30.  
  31. };
  32.  
  33. // COFFEE keys
  34. enum
  35. {
  36.     KEY_UP                = 0x8000,
  37.     KEY_DOWN            = 0x8001,
  38.     KEY_RIGHT            = 0x8002,
  39.     KEY_LEFT            = 0x8003,
  40.  
  41.     KEY_PGUP            = 0x8004,
  42.     KEY_PGDOWN        = 0x8005,
  43.  
  44.     KEY_HOME            = 0x8006,
  45.     KEY_END                = 0x8007,
  46.  
  47.     KEY_INSERT        = 0x8008,
  48.     KEY_DELETE        = 0x8009,
  49.     KEY_BACKSPACE    = 0x8010,
  50.  
  51.     KEY_ENTER            = 0x8011,
  52.     KEY_TAB                = 0x8012,
  53.  
  54.     KEY_F1                = 0x8013,
  55.     KEY_F2                = 0x8014,
  56.     KEY_F3                = 0x8015,
  57.     KEY_F4                = 0x8016,
  58.     KEY_F5                = 0x8017,
  59.     KEY_F6                = 0x8018,
  60.     KEY_F7                = 0x8019,
  61.     KEY_F8                = 0x8020,
  62.     KEY_F9                = 0x8021,
  63.     KEY_F10                = 0x8022,
  64.     KEY_F11                = 0x8023,
  65.     KEY_F12                = 0x8024,
  66.  
  67.     KEY_ESC                = 0x8025,
  68.     KEY_SPACE            = 0x8026,
  69.  
  70.     // for old IsKeyDown
  71.     KEY_MLEFT            = 0xF000,
  72.     KEY_MRIGHT        = 0xF001,
  73.  
  74.     KEY_SHIFT            = 0xF010,
  75.     KEY_CONTROL        = 0xF011,
  76.     KEY_ALT                = 0xF012
  77. };
  78.  
  79. enum
  80. {
  81.     BfBLACK            = 0,
  82.     BfWHITE            = 1,
  83.     BfLTGRAY        = 2,
  84.     BfLTRED            = 3,
  85.     BfLTGREEN        = 4,
  86.     BfLTBLUE        = 5,
  87.     BfLTYELLOW    = 6,
  88.     BfGRAY            = 7,
  89.     BfRED                = 8,
  90.     BfGREEN            = 9,
  91.     BfBLUE            = 10,
  92.     BfYELLOW        = 11,
  93.     BfDGRAY            = 12,
  94.     BfDRED            = 13,
  95.     BfDGREEN        = 14,
  96.     BfDBLUE            = 15,
  97.     BfDYELLOW        = 16,
  98.     BfDWHITE        = 17,
  99.     BfORANGE        = 18,
  100.     BfBROWN            = 19,
  101.     BfPURPLE        = 20
  102. };
  103.  
  104. enum
  105. {
  106.     // bitmap modes
  107.     BMP_NORMAL                       = 0,
  108.     BMP_NORMALSCALED             = 1,
  109.     BMP_DARKEN                   = 2,
  110.     BMP_EMBOSSED                  = 3,
  111.     BMP_ALLOWALPHA                = 256 // bitmask
  112. };
  113.  
  114. // flags for layout - bf_flags
  115. enum
  116. {
  117.     BFV_GRIDGROUP_EQUALCOLS                 = 1,        // each column has the same width
  118.     BFV_GRIDGROUP_EQUALROWS                 = 2,        // each row has the same height
  119.     BFV_CMD_EQUALCOLUMNS                        = 2048, // same column width
  120.     BFV_BORDERGROUP_CHECKBOX                = 4096, // checkbox in title
  121.     BFV_BORDERGROUP_FOLD                        = 8192, // fold symbol in title of a bordergroup
  122.     BFV_BORDERGROUP_FOLD_OPEN                = 16384, // fold symbol in title of a bordergroup group is opened, otherwise closed
  123.  
  124.     BFV_DIALOG_REMOVEABLE                   = 4,        // dialog is removeable
  125.     BFV_DIALOG_BAR_VERT                     = 8,        // dialog has a vertical dialogbar
  126.     BFV_DIALOG_NOBUTTONS                        = 16,        // no button bar
  127.  
  128.     //BFV_GRIDGROUP_LAYOUTER                = 256,    // mark a layouting frame
  129.     BFV_LAYOUTGROUP_PALETTEOUTLINES = 512,
  130.     BFV_IGNORE_FOCUS                = 1024,
  131.  
  132.     BFV_TABGROUP_RELOADDIALOG       = 2048, // hack
  133.     BFV_LAYOUTGROUP_NODROP                    = 4096,
  134.     BFV_LAYOUTGROUP_NODROP2                    = 8192,
  135.  
  136.     BFx_NOEQUAL            = 64,
  137.  
  138.     BFV_
  139. };
  140.  
  141. // command resource object
  142. enum 
  143. {
  144.     RESOURCE_COMMAND        = 'rcmd',    // GetCResource();
  145.     RESOURCE_MENU                = 'rmnu',    // GetCResource();
  146.     RESOURCE_DIALOG            = 'rdlg',    // GetCResource();
  147.     RESOURCE_ICON                = 'ricn',    // GetCResource();
  148.     RESOURCE_CONTAINER  = 'rcnt', // GetCResource();
  149.  
  150.     RESCMD_TITLE                = 'titl',
  151.     RESCMD_HELP                    = 'help',
  152.     RESCMD_ICONPOOL            = 'pool',
  153.     RESCMD_ICONNUM            = 'inum',
  154.     RESCMD_DESTINATION    = 'dest',
  155.     RESCMD_VERSIONINFO    = 'vers',
  156.         CMD_XL                        = 1,
  157.         CMD_GO                        = 2,
  158.     RESCMD_SHORTQUAL        = 'sqal',
  159.     RESCMD_SHORTKEY            = 'skey',
  160.     RESCMD_SHORTQUAL2        = 'sql2',
  161.     RESCMD_SHORTKEY2        = 'sky2',
  162.     RESCMD_SHORTSTRING    = 'sstr',
  163.     RESCMD_SHORTCUTCHANGED = 'scch',
  164.  
  165.     // private
  166.     RESCMD_FLAGS                = 'flag',    // LONG
  167.     RESCMD_VALUE                = 'valu', // LONG
  168.  
  169.     RESCMD_LASTUPDATE        = 'updt', // LONG
  170.     RESCMD_SUB                    = 'subc'  // subcommand container
  171. };
  172.  
  173. // menu resource object
  174. enum 
  175. {
  176.     MENURESOURCE_SUBMENU            = 1,
  177.     MENURESOURCE_SEPERATOR        = 2,
  178.     MENURESOURCE_COMMAND            = 3,
  179.     MENURESOURCE_SUBTITLE            = 4,
  180.     MENURESOURCE_STRING                = 5,
  181.     MENURESOURCE_MENURESOURCE = 6
  182. };
  183.  
  184. enum
  185. {
  186.     ICONPOOL_FILENAME        = 'name',
  187.     ICONPOOL_ICON                = 'icon',
  188.         ICON_ID                        = 'idid',
  189.         ICON_X                        = 'xpos',
  190.         ICON_Y                        = 'ypos',
  191.         ICON_W                        = 'wdth',
  192.         ICON_H                        = 'heig'
  193. };
  194.  
  195. // border types
  196. enum
  197. {
  198.     BORDER_NONE                = 0,
  199.     BORDER_THIN_IN        = 1,
  200.     BORDER_THIN_OUT        = 2,
  201.     BORDER_IN                    = 3,
  202.     BORDER_OUT                = 4,
  203.     BORDER_GROUP_IN        = 5,
  204.     BORDER_GROUP_OUT    = 6,
  205.     BORDER_OUT2                = 7,
  206.     BORDER_OUT3                = 8,
  207.     BORDER_BLACK            = 9,
  208.     BORDER_ACTIVE_1        = 10,
  209.     BORDER_ACTIVE_2        = 11,
  210.     BORDER_GROUP_TOP    = 12,
  211.     BORDER_ACTIVE_3        = 13,
  212.  
  213.     BORDER_MASK                                = 0x7FFFFFFF,
  214.     BORDER_WITH_TITLE                    = 0x80000000
  215. };
  216.  
  217. // dialog resource object
  218. enum 
  219. {
  220.     DR_NAME                                                        = 'name',
  221.     DR_CHILD                                                    = 'chld',
  222.     DR_ID                                                            = 'rsid',
  223.         DRTYPE_DIALOG                                        = 'rdlg',
  224.     
  225.         DRTYPE_SCROLLGROUP                            = 'sgrp',
  226.             DR_SCROLL_V                                        = 'scrv',
  227.             DR_SCROLL_H                                        = 'scrh',
  228.             DR_SCROLL_BORDERIN                        = 'scrb',
  229.             DR_SCROLL_STATUSBAR               = 'scrs',
  230.  
  231.         DRTYPE_TAB                                            = 'dtab',
  232.             DR_TAB_SELECTBY                                = 'tbsl',
  233.                 TAB_TABS                                        = 0,
  234.                 TAB_NOSELECT                                = 1,
  235.                 TAB_CYCLE                                        = 2,
  236.                 TAB_RADIO                                        = 3,
  237.  
  238.         DRTYPE_RADIOGROUP                                = 'rgrp', // radio group
  239.  
  240.         DRTYPE_DLGGROUP                                    = 'dlgg',
  241.             DR_DLGGROUP_OK                                = 1,
  242.             DR_DLGGROUP_CANCEL                        = 2,
  243.             DR_DLGGROUP_HELP                            = 4,
  244.  
  245.         DRTYPE_GROUP                                        = 'grup',
  246.             //DR_CHILD
  247.             //DR_NAME
  248.             //DR_ID
  249.             DR_COLUMNS                                        = 'cols', // number of columns, either DR_COLUMNS or DR_ROWS
  250.             DR_ROWS                                                = 'rows', // number of rows
  251.             DR_EQUALROWS                                    = 'eqrw',
  252.             DR_EQUALCOLS                                    = 'eqcl',
  253.             DR_BORDERSTYLE                                = 'bdst', // type of the border
  254.                 //BORDER_STYLES ...
  255.  
  256.             DR_BORDERSIZE_L                                = 'bszl', // space around the group
  257.             DR_BORDERSIZE_R                                = 'bszr', // space around the group
  258.             DR_BORDERSIZE_T                                = 'bszt', // space around the group
  259.             DR_BORDERSIZE_B                                = 'bszb', // space around the group
  260.             DR_SPACE_X                                        = 'spcx', // space between elements
  261.             DR_SPACE_Y                                        = 'spcy', // space between elements
  262.             DR_ALIGNMENT                                    = 'algn', // alignment
  263.                 // binfo->pos baseframe vertical and horizontal orientation
  264.                 BFV_CENTER                                    = 0,
  265.                 BFV_TOP                                            = 1, // (1<<0),
  266.                 BFV_BOTTOM                                    = 2, // (1<<1),
  267.                 BFV_FIT                                            = 3, // (BFV_BOTTOM|BFV_TOP),
  268.                 BFV_SCALE                                        = 4, // (1<<2),
  269.                 BFV_SCALEFIT                                = 7, // (BFV_SCALE|BFV_FIT),
  270.                     BFV_MASK                                    = 3,
  271.  
  272.                 BFH_CENTER                                    = 0,
  273.                 BFH_LEFT                                        = 8,  // 1<<3
  274.                 BFH_RIGHT                                        = 16, // 1<<4
  275.                 BFH_FIT                                            = 24,
  276.                 BFH_SCALE                                        = 32, // 1<<5
  277.                 BFH_SCALEFIT                                = 56,
  278.                     BFH_MASK                                    = 24,
  279.  
  280.         DRTYPE_WINDOWPIN                                = 'wpin',
  281.         DRTYPE_SEPARATOR                                = 'wsep',
  282.  
  283.         DRTYPE_OLDWIN                                        = 'oldw',
  284.             DROLDWIN_SIZE_W                                = 'sizw',    // default dialog size (w,h) in dlus
  285.             DROLDWIN_SIZE_H                                = 'sizh',    // default dialog size (w,h) in dlus
  286.  
  287.             DROLDWIN_EDITTEXT                            = 'edit',    
  288.             DROLDWIN_MULTILINETEXT                = 'edmt',    
  289.                 DR_MULTILINE_MONOSPACED            = 1,
  290.                 DR_MULTILINE_SYNTAXCOLOR        = 2,
  291.                 DR_MULTILINE_STATUSBAR        = 4,
  292.  
  293.             DROLDWIN_EDITNUMBERARROWS         = 'numa',
  294.             DROLDWIN_EDITNUMBER                        = 'numb',
  295.             DROLDWIN_COMBOBOX                            = 'cmbo',
  296.             DROLDWIN_POPUPBUTTON                    = 'popb',
  297.             DROLDWIN_CHECKBOX                            = 'chck',
  298.             DROLDWIN_STATICTEXT                        = 'text',
  299.             DROLDWIN_SLIDER                                = 'sldr',
  300.             DROLDWIN_SLIDERNUM                        = 'slnm',
  301.             DROLDWIN_GROUPBOX                            = 'ogrp',
  302.             DROLDWIN_BUTTON                                = 'bttn',
  303.             DROLDWIN_OWNERDRAW                        = 'ownr',
  304.             DROLDWIN_COLORFIELD                        = 'cfld',
  305.                 DR_COLORFIELD_NO_BRIGHTNESS = 1,
  306.                 DR_COLORFIELD_NO_COLOR            = 2,
  307.  
  308.             DROLDWIN_RADIOGADGET                    = 'rgad',
  309.             DROLDWIN_SPECIALRADIO                    = 'sbtn',
  310.                 // for all gadget types
  311.                 // DR_ID                                        = 'rsid',
  312.                 // DR_CHILD                                    = 'chld',
  313.                 // DR_NAME                                    = 'name',
  314.                 DROLDWIN_POS_X                            = 'posx',    // position (x,y,w,h) in dlus for the object
  315.                 DROLDWIN_POS_Y                            = 'posy',    // position (x,y,w,h) in dlus for the object
  316.                 DROLDWIN_POS_W                            = 'posw',    // position (x,y,w,h) in dlus for the object
  317.                 DROLDWIN_POS_H                            = 'posh',    // position (x,y,w,h) in dlus for the object
  318.             DROLDWIN_ARROWBUTTON          = 'arrg',
  319.                 DR_ARROWTYPE                                = 'arrt',
  320.                     ARROW_LEFT                                 = 1,
  321.                     ARROW_RIGHT                                = 2,
  322.                     ARROW_UP                                     = 3,
  323.                     ARROW_DOWN                                 = 4,
  324.                     ARROW_SMALL_LEFT                     = 5,
  325.                     ARROW_SMALL_RIGHT                    = 6,
  326.                     ARROW_SMALL_UP                         = 7,
  327.                     ARROW_SMALL_DOWN                     = 8,
  328.             DROLDWIN_LISTVIEW                            = 'list',
  329.             DROLDWIN_SUBDIALOG                        = 'subd',
  330.             DROLDWIN_SDK                                    = 'sdk8',
  331.  
  332.     DIALOGRESOURCE_
  333. };
  334.  
  335. // flags for command gadget
  336. enum
  337. {
  338.     CMD_POPUP_RIGHT        = 1,
  339.     CMD_POPUP_BELOW        = 2,
  340.     CMD_PIC                      = 4,
  341.     CMD_TOGGLE                = 8,        // can be toggled
  342.     CMD_TEXT                    = 16,        // text
  343.     CMD_SHORTCUT            = 32,        // shortcut
  344.     CMD_ARROW                    = 64,        // arrows for menu
  345.     CMD_VERT                    = 128,    // vertical alignment of text and icon
  346.     CMD_BUTTONLIKE        = 256,    // button (TRUE) or menu entry (FALSE)
  347.     CMD_MENU                    = 512,    // menu entry (is a menu entry and no command entry)
  348.     CMD_CYCLE                    = 1024,    // stays toggled
  349.     CMD_EDITPALETTE        = 4096, // command manager flag (button shows up in palette manager)
  350.     CMD_SMALLICONS        = 8192, // small icons (text height)
  351.  
  352.     CMD_VALUE                    = 0x1FFFFFFF,
  353.     CMD_ENABLED                = 0x40000000,
  354.     CMD_USED                    = 0x20000000,
  355.  
  356.     CMD_
  357. };
  358.  
  359. // flags for popups
  360. enum
  361. {
  362.     POPUP_ABOVE                                    = 1,        // sdk: open to this direction relative to mouse
  363.     POPUP_BELOW                                    = 2,        // sdk: open to this direction relative to mouse
  364.     POPUP_CENTERVERT                        = 3,        // sdk: open to this direction relative to mouse
  365.  
  366.     POPUP_LEFT                                    = 4,        // sdk: open to this direction relative to mouse
  367.     POPUP_RIGHT                                    = 8,        // sdk: open to this direction relative to mouse
  368.     POPUP_CENTERHORIZ                        = 12,        // sdk: open to this direction relative to mouse
  369.  
  370.     POPUP_ADJUSTWIDTH                        = 16,        // only for internal usage
  371.     POPUP_ADJUSTHEIGHT                    = 32,        // only for internal usage
  372.  
  373.     POPUP_EXECUTECOMMANDS                = 64,        // sdk: execute command immediatly
  374.  
  375.     POPUP_
  376. };
  377.  
  378. // flags for coffee manager window
  379. enum
  380. {
  381.     SCROLLGROUP_VERT     = 4,
  382.     SCROLLGROUP_HORIZ    = 8,
  383.     SCROLLGROUP_NOBLIT   = 16,
  384.     SCROLLGROUP_LEFT       = 32,
  385.     SCROLLGROUP_BORDERIN = 64,
  386.     SCROLLGROUP_STATUSBAR = 128,
  387.     SCROLLGROUP_AUTOHORIZ = 256,
  388.     SCROLLGROUP_AUTOVERT  = 512
  389. };
  390.  
  391. // modes for MouseSelectAreas function
  392. enum
  393. {
  394.     MOUSESELECT_RECTANGLE = 1,
  395.     MOUSESELECT_POLYGON   = 2,
  396.     MOUSESELECT_FREE      = 3
  397. };
  398.  
  399. enum
  400. {
  401.     MANAGER_NONE,
  402.  
  403.     MANAGER_SCROLLER_HORIZ,
  404.     MANAGER_SCROLLER_VERT,
  405.     MANAGER_CLOSEBUTTON,
  406.     MANAGER_SIZEABLE,
  407.     MANAGER_TITLE,
  408.     MANAGER_ID,
  409.     MANAGER_MENUID,
  410.     MANAGER_NOBLITBIT,
  411.     MANAGER_WANTOWNSTATUSBAR,
  412.     MANAGER_SPECIALUNLOCKMOUSEDOWN,
  413.  
  414.     MANAGER_DUMMY
  415. };
  416.  
  417. // for color chooser
  418. enum
  419. {
  420.     NO_BRIGHTNESS = 1,    
  421.     NO_COLOR      = 2,
  422.     DUMMY_
  423. };
  424.  
  425. // focus definitions of COFFEE frames
  426. enum 
  427. {
  428.     FOCUS_OFF                    = 0,    // has no focus
  429.     FOCUS_ON                    = 1,    // has focus and window is active
  430.     FOCUS_INACT                = 2,    // has focus but window is inactive
  431.     FOCUS_HIDDEN            = 3,    // focus is hidden through ENTER
  432.     FOCUS_INPROGRESS    = 4,
  433.     FOCUS_
  434. };
  435.  
  436. enum
  437. {
  438.     BFM_INIT                            = 'bINI',
  439.  
  440.     BFM_TIMER_MESSAGE       = 10020,
  441.     
  442.     BFM_CALCSIZE                    = 'bCAS',
  443.  
  444.     BFM_CHECKCLOSE                = 'chkc',    // message to physical window when user closes window
  445.     BFM_ASKCLOSE                    = 'askc',    // send within dialog to check if dialog can be closed
  446.     BFM_DESTROY                        = 'dsty',    // force closing
  447.  
  448.     BFM_CLOSEWINDOW                = 'clos',    // parent message for window closing
  449.  
  450.     BFM_ASK_TABSWITCH            = 'stab', // ask for tab switching 
  451.  
  452.     BFM_ASK_VISIBLE                = 'avis', // parent message to ask for visiblility
  453.     BFM_VISIBLE_ON                = 'visT', // message about visibility change
  454.     BFM_VISIBLE_OFF                = 'visF', // message about visibility change
  455.  
  456.     BFM_PARENT_TITLECHNG    = 'pren', // title change parent notify 
  457.     BFM_RENAMEWINDOW            = 'wren',    // rename window message
  458.  
  459.     BFM_GETACTIVETABTITLE = 'tact', // ask for active tab title
  460.  
  461.     BFM_GETCURSORINFO            = 'cinf',    // ask for mousepointdata (returns container)
  462.         // BFM_DRAG_SCREENX - screenx
  463.         // BFM_DRAG_SCREENY - screeny
  464.         // resultcontainer
  465.         RESULT_CURSOR                = 1,            // cursor type
  466.         RESULT_BUBBLEHELP        = 2,            // bubble help text
  467.  
  468.     BFM_GETINFO                        = 'bInf',
  469.  
  470.     BFM_DRAW                            = 'bDRA',
  471.         BFM_DRAW_LEFT                = 1,            // only redraw this area
  472.         BFM_DRAW_TOP                = 2,            // only redraw this area
  473.         BFM_DRAW_RIGHT            = 3,            // only redraw this area
  474.         BFM_DRAW_BOTTOM            = 4,            // only redraw this area
  475.         BFM_DRAW_HASRECT        = 5,            // flag for a existing redraw rectangle
  476.         BFM_DRAW_OGL                = 6,            // flag for a existing redraw rectangle
  477.  
  478.     BFM_GET_SHOW_AREA            = 'sget',
  479.     BFM_SHOW_AREA                    = 'sare', // scrolls the given rectangle so that it becomes visible (ScrollArea)
  480.         //BFM_DRAW_LEFT
  481.         //BFM_DRAW_TOP
  482.         //BFM_DRAW_RIGHT
  483.         //BFM_DRAW_BOTTOM
  484.  
  485.     BFM_SCROLLGROUP_SCROLLED    = 'scrs',
  486.     SCROLLGROUP_HEADER    = 0xdeadbeee,
  487.  
  488.     BFM_TITLECHNG                    = 'bTIC',
  489.  
  490.     BFM_ENABLE                        = 'bEna',    // enables the COFFEE frame
  491.     BFM_DISABLE                        = 'bDis',    // disables the COFFEE frame
  492.  
  493.     BFM_MINCHNG                        = 'bMIC',
  494.  
  495.     BFM_MAXCHNG                        = 'bMAC',
  496.  
  497.     BFM_VALUECHNG                    = 'bVAC',
  498.  
  499.     BFM_IDCHNG                        = 'bIDC',
  500.  
  501.     BFM_GOTFOCUS                    = 'bGFC',    // item got the focus
  502.     BFM_LOSTFOCUS                    = 'bLFC',    // item lost the focus
  503.     
  504.     BFM_SETFOCUS                    = 'bSFC',    // internal message
  505.     BFM_SETFIRSTFOCUS            = 'bSFF',    // help message focus-keyboard control
  506.  
  507.     BFM_MOVEFOCUSNEXT            = 'bFNX',    // help message focus-keyboard control
  508.     BFM_MOVEFOCUSPREV            = 'bFPR',    // help message focus-keyboard control
  509.  
  510.     BFM_SETLASTFOCUS            = 'bSLF',    // help message focus-keyboard control
  511.     
  512.     BFM_SHOW_FRAME                = 'sFrm', // brings frame to front, returns TRUE if found
  513.         BFM_SHOW_ID                    = 1,            // show this id
  514.         BFM_MANAGER_ID            = 2,            // show this id
  515.  
  516.     BFM_CHILD_REMOVED            = 'bRem',
  517.         BFM_CHILD_ID                = 1,
  518.  
  519.     BFM_ACTIVATE_WINDOW        = 'wact',
  520.  
  521.     BFM_INPUT                                            = 'bIPN',
  522.         BFM_INPUT_QUALIFIER                    = 'ipqa',    // qualifier
  523.         BFM_INPUT_DEVICE                        = 'ipdv', // device
  524.             BFM_INPUT_MOUSE                        = 'mous', // mouse
  525.             BFM_INPUT_KEYBOARD                = 'keyb', // mouse
  526.                 BFM_INPUT_ASC                        = 'kasc', //
  527.  
  528.         BFM_INPUT_CHANNEL                        = 'ipca', // channel
  529.                 BFM_INPUT_MOUSELEFT            = 1,
  530.                 BFM_INPUT_MOUSERIGHT        = 2,
  531.                 BFM_INPUT_MOUSEMIDDLE        = 3,
  532.                 BFM_INPUT_MOUSEWHEEL        = 100,        // windows mouse wheel message
  533.                 BFM_INPUT_MOUSEMOVE            = 101,        // windows mouse wheel message
  534.             BFM_INPUT_VALUE                        = 'ipva',    // LONG: channel value (e.g. pressure)
  535.             BFM_INPUT_VALUE_REAL            = 'ipvA',    // REAL: Value des Channels (z.B Pressure)
  536.             BFM_INPUT_X                                = 'ipvx',    // channel x value
  537.             BFM_INPUT_Y                                = 'ipvy',    // channel y value
  538.             BFM_INPUT_Z                                = 'ipvz',    // channel z value
  539.             BFM_INPUT_TILT                        = 'itlt',    // pen tilt
  540.             BFM_INPUT_ROTATION                = 'irot',    // pen rotation
  541.             BFM_INPUT_FINGERWHEEL            = 'ifng',    // finger wheel
  542.  
  543.         BFM_INPUT_DOUBLECLICK             = 'ipdb', // double click (bool)
  544.         INPUT_DBLCLK                                = 0x8000,
  545.  
  546.     BFM_SIZED                                            = 'bISI',
  547.  
  548.     BFM_ACTION                                        = 'bACT',
  549.         BFM_ACTION_ID                                = 'meid',
  550.         BFM_ACTION_VALUE                        = 'meva',
  551.         BFM_ACTION_INDRAG                        = 'medr',    // slider in dragging mode (unfinished) (bool)
  552.         BFM_ACTION_STRCHG                        = 'mest',    // string in textfield changed (bool)
  553.         BFM_ACTION_VALCHG                        = 'vchg',    // NumberEdit/SliderChg (bool)
  554.  
  555.     BFM_ACTIVE_CHG                                = 'bACG',    // activation changed
  556.         BFM_ACTIVE                                    = 'actv',    // flag, if window is active
  557.  
  558.     BFM_DRAGSTART                                    = 10001,
  559.     BFM_DRAGRECEIVE                                = 10003,
  560.     BFM_DRAGEND                                        = 10004,
  561.     BFM_DRAGAUTOSCROLL                        = 10005,
  562.         BFM_DRAG_TYPE                                = 1,
  563.  
  564.             DRAGTYPE_FILES                        = 1,            // data pointer is a string with filename
  565.             DRAGTYPE_ICON                            = 4,            //
  566.             DRAGTYPE_MANAGER                    = 5,            // destination drag for COFFEE manager
  567.             DRAGTYPE_COMMAND                    = 6,            // destination drag for command
  568.             DRAGTYPE_CMDPALETTE                = 7,
  569.  
  570.             DRAGTYPE_OBJECT                        = 100,
  571.             DRAGTYPE_TAG                            = 101,
  572.             DRAGTYPE_OTRENN                        = 102,
  573.             DRAGTYPE_ATRENN                        = 103,
  574.             DRAGTYPE_ANAME                        = 104,
  575.             DRAGTYPE_CTRENN                        = 105,
  576.             DRAGTYPE_HV                         = 106,
  577.             DRAGTYPE_TIMEA                        = 107,
  578.             DRAGTYPE_TIMEC                        = 108,
  579.             DRAGTYPE_TIMEU                        = 109,
  580.             DRAGTYPE_MCURVE                        = 110,
  581.             DRAGTYPE_U_MARKERX                = 111,
  582.             DRAGTYPE_U_MARKERY                = 112,
  583.  
  584.             DRAGTYPE_MATERIAL                    = 200,
  585.             DRAGTYPE_ATOMARRAY                = 201,
  586.  
  587.             DRAGTYPE_KEY                            = 300,
  588.             DRAGTYPE_SEQ                            = 301,
  589.             DRAGTYPE_TRACK                        = 304,
  590.             DRAGTYPE_A_RKEYS                    = 305,
  591.  
  592.             DRAGTYPE_BROWSER_TEXTURE    = 400,
  593.             DRAGTYPE_BROWSER_SCENE    = 401,
  594.             DRAGTYPE_BROWSER_MATERIAL = 402,
  595.             DRAGTYPE_BROWSER_SOUND        = 403,
  596.             DRAGTYPE_BROWSER_FCV            = 404,
  597.             DRAGTYPE_BROWSER_COFFEE        = 405,
  598.  
  599.             DRAGTYPE_A_OBJECT           = 44000,
  600.             DRAGTYPE_A_TRACK            = 44001,
  601.             DRAGTYPE_A_SEQ              = 44002,
  602.             DRAGTYPE_A_SEQ_NEW          = 44005,
  603.             DRAGTYPE_A_KEY              = 44006,
  604.             DRAGTYPE_A_MARKER           = 44007,
  605.             DRAGTYPE_A_TIME             = 44008,
  606.             DRAGTYPE_A_SELECT_MIN       = 44010,
  607.             DRAGTYPE_A_SELECT_MAX       = 44011,
  608.             DRAGTYPE_A_LOOP_MIN         = 44013,
  609.             DRAGTYPE_A_LOOP_MAX         = 44014,
  610.             DRAGTYPE_A_TRENN1           = 44015,
  611.             DRAGTYPE_A_TRENN2           = 44016,
  612.             DRAGTYPE_A_SELECT         = 44017,
  613.             DRAGTYPE_A_LOOP           = 44018,
  614.             DRAGTYPE_A_TIME_PS          = 44020,
  615.             DRAGTYPE_A_LINE                        = 45000,
  616.             DRAGTYPE_A_VDRAG                    = 45001,
  617.  
  618.         BFM_DRAG_DATA                                = 2,
  619.         BFM_DRAG_SCREENX                        = 3,
  620.         BFM_DRAG_SCREENY                        = 4,
  621.         BFM_DRAG_FINISHED                        = 5,
  622.         BFM_DRAG_PRIVATE                        = 6,
  623.         BFM_DRAG_LOST                                = 7,
  624.         BFM_DRAG_TYPE_NEW                        = 8,
  625.         BFM_DRAG_DATA_NEW                        = 9,
  626.     
  627.         AUTOSCROLL_UP                                = 1,    // result of BFM_DRAGAUTOSCROLL
  628.         AUTOSCROLL_DOWN                            =    2,    // result of BFM_DRAGAUTOSCROLL
  629.         AUTOSCROLL_LEFT                            = 3,    // result of BFM_DRAGAUTOSCROLL
  630.         AUTOSCROLL_RIGHT                        =    4,    // result of BFM_DRAGAUTOSCROLL
  631.         AUTOSCROLL_OWNX                            =    5,    // only for timeline - hack
  632.         AUTOSCROLL_OWNY                            =    6,    // only for timeline - hack
  633.  
  634.     // Tilo changed
  635.     BFM_GETVALUE                                    = 'gVAL',    // get Value
  636.  
  637.     BFM_VALUEADD                                    = 'bVAD',
  638.     BFM_VALUESUB                                    = 'bVSB',
  639.  
  640.     BFM_INITVALUES                                = 'bVIN',
  641.  
  642.     BFM_ADJUSTSIZE                                = 'fADJ',    // message to adjust the object in the given range l.d.
  643.         BFM_ADJUSTSIZE_LEFT                    = 1,
  644.         BFM_ADJUSTSIZE_TOP                    = 2,
  645.         BFM_ADJUSTSIZE_WIDTH                = 3,
  646.         BFM_ADJUSTSIZE_HEIGHT                = 4,
  647.  
  648.     // parent messages
  649.     //    BFM_GETDISABLED                        = 'bDIS',    // ask if parent is disabled
  650.  
  651.     BFM_LAYOUT_CHANGED_INTERNAL = 'iLAY',
  652.     BFM_LAYOUT_CHANGED                        = 'fLAY',    // layout change message to parent 
  653.  
  654.     BFM_ISACTIVE                                    = 'iact', // to ask active view...
  655.  
  656.     BFM_SETSTATUSBAR                             = 'stat',
  657.         BFM_STATUSBAR_PROGRESSON        = 1,            // bool
  658.         BFM_STATUSBAR_TXT                        = 2,            // string
  659.         BFM_STATUSBAR_PROGRESS            = 3,            // real 0.0...1.0
  660.         BFM_STATUSBAR_PROGRESSSPIN    = 4,            // ...
  661.         BFM_STATUSBAR_HELP            = 5,
  662.  
  663.     BFM_MARKFOCUS                                    = 'bMFC',    // reverts focus message ... for internal use only
  664.  
  665.     BFM_CLEARFOCUS                                = 'bCFC',    // clear focus of all childs
  666.  
  667.     BFM_SETACTIVE                                    = 'bSAC',    // set active dialog bar
  668.         BFM_SETACTIVE_DATA                    = 'bSAC',    // set active dialog bar
  669.  
  670.     BFM_REMOVE_DIALOG                            = 'bREM', // remove the dialog from current group
  671.         BFM_DESTINATION_GROUP             = 'gdst', // destination for dialog, NULL means own window
  672.  
  673.     BFM_SCROLLAREA                                = 10010,     // scroll client area
  674.         BFM_SCROLLX                                    = 1,             // scroll direction
  675.         BFM_SCROLLY                                    = 2,             // scroll direction
  676.  
  677.     BFM_GETVISIBLE_XOFF                        = 10011,    // internal usage
  678.     BFM_GETVISIBLE_YOFF                        = 10012,    // internal usage
  679.     BFM_GETVISIBLE_WIDTH                    = 10013,    // internal usage
  680.     BFM_GETVISIBLE_HEIGHT                    = 10014,    // internal usage
  681.  
  682.     // scroller
  683.     SCR_VISIBLEOBJS                                = 'sVIS',    // visible scroll elements
  684.  
  685.     BFM_SETVIEWPORTORIGIN                 = 'cORG',
  686.         BFM_SETVIEWPORTORIGIN_X            = 1,
  687.         BFM_SETVIEWPORTORIGIN_Y            = 2,
  688.     BFM_SETVIEWPORTSIZE                        = 'cSIZ',
  689.  
  690.     BFM_MENU_SET                                    = 10000,
  691.         BFM_MENU_ON                                    = 1,
  692.         BFM_MENU_OFF                                = 2,
  693.         BFM_MENU_CHECK                            = 4,
  694.         BFM_MENU_UNCHECK                        = 8,
  695.  
  696.     BFM_DRAWUSERITEM                            = 'usrd',
  697.         BFM_DRAWUSERITEM_ID                    = 1,
  698.  
  699.     // C4D message
  700.     BFM_SYNC_MESSAGE                            = 'sync',
  701.     BFM_CORE_MESSAGE                            = 'MciM',
  702.         BFM_CORE_ID                                    = 'MciI',    // C4D message ID
  703.         BFM_CORE_UNIQUEID                        = 'Muid',    // time stamp
  704.         BFM_CORE_PAR1                                = 'Mci1',    // parameter 1
  705.         BFM_CORE_PAR2                                = 'Mci2',    // parameter 2
  706.         BFM_CORE_SPECIALCOREID             = 'scid', // special manager ID for sync message
  707.  
  708.     BFM_TESTONLY                                    = 'test', // do nothing
  709.     BFM_SPECIALLONG                                = 'splg', // special thing
  710.     BFM_SPECIALSTRING                            = 'spst', // special thing
  711.     BFM_SPECIALENABLE                            = 'spen',    // ....
  712.     BFM_SPECIALGETLONG                        = 'gtlg', // special thing
  713.     BFM_SPECIALGETSTRING                    = 'gtst', // special thing
  714.     BFM_SPECIALSETRANGE                        = 'srng', // special hack
  715.     BFM_SPECIALACTIVATE                        = 'sact', // special activate
  716.     BFM_SPECIALVECTOR                            = 'svec', // set vector
  717.     BFM_SPECIALGETVECTOR                    = 'gvec', // get vector
  718.  
  719.     BFM_SPECIALSETCONTAINER                = 'scnt', // special hack
  720.     BFM_SPECIALGETREAL                        = 'grel', // special hack
  721.     BFM_SPECIALSETREAL                        = 'srel', // special hack
  722.     BFM_SPECIALSETPOPUPMENU                = 'spop', // special container for popup button menudata
  723.  
  724.     BFM_COMMAND                                        = 'cmmd', // executed commando
  725.         BFM_CMD_ID                                    = 'cmdi',    // command ID
  726.         BFM_CMD_DEST                                = 'dest', // destination manager
  727.         BFM_CMD_FIRSTFOCUS                    = 'focu', // TRUE, if the message is sent first time to the current manager, second try to the editor
  728.  
  729.     BFM_COMMANDNOTIFY                            = 'cmdn', // command notify: return
  730.         BFM_CMD_VALUEMASK                        = 0x1FFFFFFF,
  731.         BFM_CMD_USED                                = 0x20000000,
  732.         BFM_CMD_ENABLED                            = 0x40000000,
  733.  
  734.     BFM_INTERACTSTART                            = 'inta',    // interact start notify
  735.     BFM_INTERACTEND                                = 'inte',    // interact end notify
  736.  
  737.     BFM_CLEARFOCUS_SPECIAL                = 'bCFS', // private: clear focus special
  738.  
  739.     BFM_CORE_UPDATECOMMANDS                = 'updc', // forces update of all command buttons
  740.  
  741.     BF_INSERT_LAST                                = 2147483647,
  742.  
  743.     BFM_MENUFINDER                                = 'find',
  744.     BFM_SET_MSG_BITMASK                        = 'bitm',
  745.         BITMASK_CORE_MESSAGE                = 1,
  746.         BITMASK_SYNC_MESSAGE                = 2,
  747.  
  748.     BFM_SETMAINTITLE                             = 'mtit',
  749.  
  750.     BFM_GETVIEWPANELDATA                    = 'vpdt',
  751.  
  752.     BFM_GETVIEWPANEL_PRIVATEDATA    = 'vppd',
  753.     BFM_SETVIEWPANELLAYOUT                 = 'vpsl',
  754.         BFM_VPD_PANELID                            = 'vpid',
  755.         BFM_VPD_LAYOUTTYPE                    = 'vplt',
  756.         BFM_VPD_MAXIMIZED                        = 'vpmx',
  757.         BFM_VPD_PRIVATEDATA                   = 'vpdt',
  758.  
  759.     BFM_STORE_WEIGHTS                            = 'stwg',
  760.     BFM_MARKFORCELAYOUT                        = 'mkfl',
  761.  
  762.     BFM_REDRAW_EDITMODE                     = 'dwed',
  763.     BFM_RELOAD_MENUS                            = 'ldmn',
  764.     BFM_OPTIMIZE                                    = 'opti',
  765.     BFM_CORE_UPDATEACTIVECOMMANDS = 'upda',
  766.  
  767.     BFM_UPDATE_REGION                         = 'uprg',    // parent message -> update region
  768.     BFM_GUIPREFSCHANGED                        = 'gpch',    // message for changed gui prefs
  769.  
  770.     BFM_LAYOUT_GETDATA                        = 'layg',    // get layoutdata from manager
  771.     BFM_LAYOUT_SETDATA                        = 'lays',    // set layoutdata in manager
  772.  
  773.     BFM_SCROLL_VISIBLE_PARENT            = 'ScPa',
  774.  
  775.     BFM_DUMMY                                         = 0             // dummy
  776. };
  777.  
  778. enum
  779. {
  780.     GUI_DIALOG_MINIMIZE = 90,
  781.     GUI_DIALOG_RELEASE  = 91,
  782.     GUI_DIALOG_CLOSE        = 92
  783. };
  784.  
  785.